package com.ruoyi.manage.mapper;

import java.util.List;
import com.ruoyi.manage.domain.SurgeryDevice;
import com.ruoyi.manage.domain.SurgeryDeviceDetail;

/**
 * 术中清点记录最外层 记录第几次时间等Mapper接口
 * 
 * @author zww
 * @date 2025-07-08
 */
public interface SurgeryDeviceMapper 
{
    /**
     * 查询术中清点记录最外层 记录第几次时间等
     * 
     * @param surgeryDeviceId 术中清点记录最外层 记录第几次时间等主键
     * @return 术中清点记录最外层 记录第几次时间等
     */
    public SurgeryDevice selectSurgeryDeviceBySurgeryDeviceId(Long surgeryDeviceId);

   public List<SurgeryDeviceDetail> selectSurgeryDeviceDetailList(Long surgeryDeviceId);
    /**
     * 查询术中清点记录最外层 记录第几次时间等列表
     * 
     * @param surgeryDevice 术中清点记录最外层 记录第几次时间等
     * @return 术中清点记录最外层 记录第几次时间等集合
     */
    public List<SurgeryDevice> selectSurgeryDeviceList(SurgeryDevice surgeryDevice);

    /**
     * 新增术中清点记录最外层 记录第几次时间等
     * 
     * @param surgeryDevice 术中清点记录最外层 记录第几次时间等
     * @return 结果
     */
    public int insertSurgeryDevice(SurgeryDevice surgeryDevice);

    /**
     * 修改术中清点记录最外层 记录第几次时间等
     * 
     * @param surgeryDevice 术中清点记录最外层 记录第几次时间等
     * @return 结果
     */
    public int updateSurgeryDevice(SurgeryDevice surgeryDevice);

    /**
     * 删除术中清点记录最外层 记录第几次时间等
     * 
     * @param surgeryDeviceId 术中清点记录最外层 记录第几次时间等主键
     * @return 结果
     */
    public int deleteSurgeryDeviceBySurgeryDeviceId(Long surgeryDeviceId);

    /**
     * 批量删除术中清点记录最外层 记录第几次时间等
     * 
     * @param surgeryDeviceIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSurgeryDeviceBySurgeryDeviceIds(Long[] surgeryDeviceIds);

    /**
     * 批量删除术中清点记录
     * 
     * @param surgeryDeviceIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSurgeryDeviceDetailBySurgeryDeviceIds(Long[] surgeryDeviceIds);
    
    /**
     * 批量新增术中清点记录
     * 
     * @param surgeryDeviceDetailList 术中清点记录列表
     * @return 结果
     */
    public int batchSurgeryDeviceDetail(List<SurgeryDeviceDetail> surgeryDeviceDetailList);
    

    /**
     * 通过术中清点记录最外层 记录第几次时间等主键删除术中清点记录信息
     * 
     * @param surgeryDeviceId 术中清点记录最外层 记录第几次时间等ID
     * @return 结果
     */
    public int deleteSurgeryDeviceDetailBySurgeryDeviceId(Long surgeryDeviceId);
}
